package com.hsgene.order.domain.billing.constant;

import com.hsgene.common.util.exception.ErrorCode;

/**
 * @author wxf
 * @date 2018/11/2 14:24
 **/
public enum BillingApplyErrorCode implements ErrorCode {
    /**
     * 开票申请
     */
    QUERY_BILLING_APPLY_IS_ERROR(95001,"QUERY_BILLING_APPLY_IS_ERROR","查询开票申请列表失败"),
    PAGE_SIZE_IS_NOT_NULL(95002,"PAGE_SIZE_IS_NOT_NULL","page和size不能为空"),
    UPDATE_INVOICE_IS_ERROR(95002,"UPDATE_INVOICE_IS_ERROR","发票修改异常"),
    UPDATE_INVOICE_IS_FAILED(95002,"UPDATE_INVOICE_IS_FAILED","发票修改失败"),
    INVOICE_INFO_IS_ERROR(95008,"INVOICE_INFO_IS_ERROR","发票用户不匹配"),
    INVOICE_IS_EXISTS(95007,"INVOICE_IS_EXISTS","发票已存在，不可重复新开"),
    GET_INVOICE_IS_ERROR(95002,"GET_INVOICE_IS_ERROR","获取发票信息错误"),
    INVOICE_TYPE_IS_NOT_NULL(95002,"INVOICE_TYPE_IS_NOT_NULL","发票类型不能为空"),
    INVOICE_ID_IS_NOT_NULL(95002,"INVOICE_ID_IS_NOT_NULL","发票ID不能为空"),
    INVOICE_NAME_IS_NOT_NULL(95002,"INVOICE_NAME_IS_NOT_NULL","发票名称不能为空"),
    INVOICE_STATUS_IS_NOT_NULL(95002,"INVOICE_STATUS_IS_NOT_NULL","发票状态不能为空"),
    REPEAT_INVOICE_ID_IS_NOT_NULL(95002,"REPEAT_INVOICE_ID_IS_NOT_NULL","重开发票ID不能为空"),
    REOPEN_EXPLANATION_IS_NOT_NULL(95002,"REOPEN_EXPLANATION_IS_NOT_NULL","重开说明不能为空"),
    INVOICE_VOUCHER_IS_NOT_NULL(95002,"INVOICE_VOUCHER_IS_NOT_NULL","企业盖章不能为空且数量最多一张"),
    INVOICE_IS_NOT_FINISHED(95004,"INVOICE_IS_NOT_FINISHED","发票信息不完整"),
    INVOICE_IS_NOT_ONESELT(95005,"INVOICE_IS_NOT_ONESELT","发票类型必须为个人，且发票名称必须相同"),
    INVOICE_APPLY_IS_ERROR(95006,"INVOICE_APPLY_IS_ERROR","发票申请失败"),
    INVOICE_IINFO_IS_NOT_EXISTS(95007,"INVOICE_IINFO_IS_NOT_EXISTS","发票信息不存在"),
    PAGE_SIZE_IS_NOT_LESS_ZEERO(95003,"PAGE_SIZE_IS_NOT_LESS_ZEERO","page和size不能小于0");

    private int code;
    private String message;
    private String description;

    BillingApplyErrorCode(int code, String message, String description) {
        this.code = code;
        this.message = message;
        this.description = description;
    }

    @Override
    public int getCode() {
        return code;
    }

    @Override
    public String getMessage() {
        return message;
    }

    @Override
    public String getDescription() {
        return description;
    }
}
